package com.hs.room.repository.service

import com.hs.room.model.archive.Archive
import com.hs.room.model.archive.Case
import kotlinx.coroutines.flow.Flow

/**
 * 档案字典仓库 类型、级别、状态
 */
interface IArchiveRepository {


    /***
     * 插入数据库
     */
    suspend fun insert(d: Archive)

    /***
     * 插入数据库
     */
    suspend fun insert(d: Case)

    /***
     * 插入数据库
     */
    suspend fun update(d: Archive)

    /***
     * 插入数据库
     */
    suspend fun update(d: Case)

    /**
     * 查询所有信息
     */
    fun getCase(limit: Int, offset: Int): Flow<List<Case>>

    /**
     * 查询所有信息
     */
    fun getArchive(limit: Int, offset: Int): Flow<List<Archive>>


    /**
     * 查询所有信息
     */
    fun countCase(): Int

    /**
     * 查询所有信息
     */
    fun countArchive(): Int

    suspend fun delete(d: Case)

    suspend fun delete(d: Archive)

}